Ah yes, this is a common problem. But by learning a little bit about the different ways you store information, you can dramatically reduce the confusion.
Both of you generally categorize your files into two types, executables and data files. Executables, which Mac calls applications, are usually platform specific, and, for the most part, can't be shared. But data files can often be exchanged, sometimes as is, sometimes with the help of a little translation.
Mac, you often use a separate resource and finder fork to store certain information about the file, what kind of file it is, what program created it, and when it was last modified. The data fork is where all the actual data that can be shared is stored. PC, you use a single fork structure for all of your files.
So, when either of you tried to read each other's files as is, you'd be looking for information in all the wrong places. Mac would search for resource information in the single fork and PC would try to figure out what to do with the extra data structure -- much too confusing for all parties.
CompuServe solves this problem for you. When a file is sent through MacCim, it can be uploaded as a MacBinary file or a plain binary file. If MacBinary is chosen, then the two forks are converted to one. Then at download, MacCim converts the file back to two forks. However, WinCim does not decode MacBinary files, so PCs must use a utility such as Behead to strip out the resource information. Mac, after you download a PC file, sometimes you'll want to add a little information to make it behave normally. Resource editors such as ResEdit can be used to insert the File Type, Creator and other information.
Next session we'll talk about solving the application problem. Until then, continue to show care and patience while working through what we've discussed.